Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

uses dune as the main build system #1565

Merged
merged 1 commit into from
Jan 10, 2023
Merged

Conversation

ivg
Copy link
Member

@ivg ivg commented Dec 23, 2022

Switches to dune as the main build system but keeps support for OASIS with ocamlbuild and omake backends.

The implementation utilizes the dune sites and plugins system, but it still supports plugins that are built with bapbuild. To ease the transition, the OASIS-built BAP is also able to load dune plugins. Later the OASIS build system will be removed from BAP but the support for bundled with bapbuild plugins will remain.

Since dune sites impose their own restrictions we had to introduce a new bap-common package that manages all the sites, starting from plugins and ending with semantic files.

related to #1561

@ivg ivg force-pushed the bap-dune branch 11 times, most recently from 07aa0fe to c5d4d68 Compare December 23, 2022 20:58
@ivg ivg force-pushed the bap-dune branch 19 times, most recently from f0147fd to a04850f Compare January 6, 2023 16:32
@ivg ivg force-pushed the bap-dune branch 7 times, most recently from d5dec65 to 0d9a894 Compare January 6, 2023 21:28
@ivg ivg requested a review from bmourad01 January 6, 2023 21:28
@ivg ivg force-pushed the bap-dune branch 4 times, most recently from 93cc174 to 2e4839d Compare January 9, 2023 14:18
bmourad01
bmourad01 previously approved these changes Jan 9, 2023
Copy link
Contributor

@bmourad01 bmourad01 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I'm glad this is happening.

Minor request: one thing that I think would be helpful is if the README was updated with some notes on creating plugins with the new build system.

@ivg
Copy link
Member Author

ivg commented Jan 9, 2023

Yep, I am working on the readme update)

bmourad01
bmourad01 previously approved these changes Jan 9, 2023
Switches to dune as the main build system but keeps support for
OASIS with ocamlbuild and omake backends.

The implementation utilizes the dune sites and plugins system, but it
still supports plugins that are built with bapbuild. To ease the
transition, the OASIS-built BAP is also able to load dune
plugins. Later the OASIS build system will be removed from BAP but the
support for bundled with bapbuild plugins will remain.

Since dune sites impose their own restrictions we had to introduce a
new bap-common package that manages all the sites, starting from
plugins and ending with semantic files.
@ivg ivg merged commit cbdf732 into BinaryAnalysisPlatform:master Jan 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants